[XENAPI] Add vif-list to xapi.py script
authorAlastair Tse <atse@xensource.com>
Wed, 24 Jan 2007 15:50:02 +0000 (15:50 +0000)
committerAlastair Tse <atse@xensource.com>
Wed, 24 Jan 2007 15:50:02 +0000 (15:50 +0000)
Signed-off-by: Alastair Tse <atse@xensource.com>
tools/python/scripts/xapi.py

index 82747fc1d5f144a905b2277ae13aa12b8adb1fb0..74f467a1b1309c26eb9700f62b6ddc211de567d2 100644 (file)
@@ -76,7 +76,11 @@ OPTIONS = {
     'vdi-list': [(('-l', '--long'),
                   {'action':'store_true',
                    'help':'List all properties of VDI'})
-               ],        
+                 ],
+    'vif-list': [(('-l', '--long'),
+                  {'action':'store_true',
+                   'help':'List all properties of VIF'})
+                 ],            
     'vm-list': [(('-l', '--long'),
                  {'action':'store_true',
                   'help':'List all properties of VMs'})
@@ -475,19 +479,28 @@ def xapi_vbd_list(args, async = False):
  
 def xapi_vif_list(args, async = False):
     server, session = connect()
+    opts, args = parse_args('vdi-list', args, set_defaults = True)
+    is_long = opts and opts.long
+    
     domname = args[0]
     
     dom_uuid = resolve_vm(server, session, domname)
     vifs = execute(server, 'VM.get_VIFs', (session, dom_uuid))
-    
-    print VIF_LIST_FORMAT % {'name': 'Name',
-                             'device': 'Device',
-                             'uuid' : 'UUID',
-                             'MAC': 'MAC'}
-    
-    for vif in vifs:
-        vif_struct = execute(server, 'VIF.get_record', (session, vif))
-        print VIF_LIST_FORMAT % vif_struct       
+
+    if not is_long:
+        print VIF_LIST_FORMAT % {'name': 'Name',
+                                 'device': 'Device',
+                                 'uuid' : 'UUID',
+                                 'MAC': 'MAC'}
+        
+        for vif in vifs:
+            vif_struct = execute(server, 'VIF.get_record', (session, vif))
+            print VIF_LIST_FORMAT % vif_struct
+    else:
+        for vif in vifs:
+            vif_struct = execute(server, 'VIF.get_record', (session, vif))
+            pprint(vif_struct)
+
 
 def xapi_vdi_list(args, async = False):
     opts, args = parse_args('vdi-list', args, set_defaults = True)